home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 7 / FM Towns Free Software Collection 7.iso / ms_dos / dmove86 / dmove86.h < prev    next >
Text File  |  1993-11-30  |  2KB  |  88 lines

  1. /*
  2.  
  3. dmove86.h version 1.20a
  4. Copyright (c) 1993 Delmonta
  5.  
  6. */
  7.  
  8. #pragma    nonrec
  9. #pragma    optimize space
  10.  
  11. struct    SECTBL
  12. {
  13.     unsigned int        num;
  14.     struct DIRENTRY far    *buf;
  15.     struct SECTBL        *next;
  16. };
  17.  
  18. struct DPB
  19. {
  20.     unsigned char    drive;
  21.     unsigned char    unitno;
  22.     unsigned int    seclen;
  23.     unsigned char    sec_clu;
  24.     unsigned char    shiftcount;
  25.     unsigned int    iplsectors;
  26.     unsigned char    fatnum;
  27.     unsigned int    root_entry;
  28.     unsigned int    data_sec;
  29.     unsigned int    maxclu;
  30.  
  31. };
  32.  
  33. struct    DIRENTRY
  34. {
  35.     char        filename[8];
  36.     char        extname[3];
  37.     char        attr;
  38.     
  39.     char        dummy[10];
  40.  
  41.     unsigned int    time;
  42.     unsigned int    date;
  43.  
  44.     unsigned int    cluster;
  45.     unsigned long    filesize;
  46. };
  47.  
  48. /* fat_dpb.c */
  49. int        getdpb(void);
  50. unsigned int    *getfat(void);
  51.  
  52. /* dmove86.c */
  53. int        control(struct DIRENTRY far *parent);
  54. int        main(int argc,char *argv[]);
  55.  
  56. /* mkscreen.c */
  57. char        dm_errmes(char *s);
  58. void        mkscreen(void);
  59. void        endscreen(void);
  60. void        selectflag(int a);
  61.  
  62. /* dmmenu.c */
  63. unsigned int    dmmenu(struct DIRENTRY far **dirtbl, unsigned int dirnum,
  64.             unsigned int cursorpos, int issubdir);
  65.  
  66. /* sectbl.c */
  67. void        freesectbl(struct SECTBL *sectbl);
  68. void        writedir(struct SECTBL *sectbl, struct DIRENTRY far **dirtbl,
  69.             unsigned int dirnum);
  70.  
  71. /* dmsort.c */
  72. void        dmsort(struct DIRENTRY far **dirtbl,
  73.                 unsigned int p,unsigned int q);
  74.  
  75. /* sectbl.a86 */
  76. unsigned int    rdabssec(void far *buf,unsigned int secno,int drive);
  77. unsigned int    wrabssec(void far *buf,unsigned int secno,int drive);
  78.  
  79. /* dmmenu()からの戻り値の下位2ビットの値 */
  80. #define    UPDIR    0
  81. #define    CHGDIR    1
  82. #define    WRTDIR    2
  83. #define    ORIGIN    3
  84.  
  85. #define    CL2SEC(c)    ( Dpb.data_sec + ((c)-2)*(Dpb.sec_clu+1) )
  86. #define    DIRSEC        (Dpb.seclen / sizeof(struct DIRENTRY))
  87.  
  88.